package com.hsogoo.ultraman.dao;

import java.util.List;

import org.springframework.stereotype.Component;

import com.google.common.collect.Lists;
import com.hsogoo.ultraman.dto.ConfigDto;

/**
 * Created by za-huangsaigang on 2018/9/19.
 */
@Component
public class ConfigDao {

    public List<ConfigDto> findConfigDtoByNamespace(Long namespaceId){

        if(namespaceId == 1L){
            ConfigDto configDto1 = new ConfigDto();
            configDto1.setNamespaceName("global");
            configDto1.setKey("website");
            configDto1.setValue("www.baidu.com");
            ConfigDto configDto2 = new ConfigDto();
            configDto2.setNamespaceName("global");
            configDto2.setKey("companyName");
            configDto2.setValue("companyName");
            return Lists.newArrayList(configDto1, configDto2);
        }

        if(namespaceId == 2L){
            ConfigDto configDto1 = new ConfigDto();
            configDto1.setNamespaceName("env");
            configDto1.setKey("zkUrl");
            configDto1.setValue("127.0.0.1");
            ConfigDto configDto2 = new ConfigDto();
            configDto2.setNamespaceName("env");
            configDto2.setKey("redisUrl");
            configDto2.setValue("10.1.1.3");
            return Lists.newArrayList(configDto1, configDto2);
        }

        if(namespaceId == 3L){
            ConfigDto configDto1 = new ConfigDto();
            configDto1.setNamespaceName("app");
            configDto1.setKey("connectTimeout");
            configDto1.setValue("1000");
            ConfigDto configDto2 = new ConfigDto();
            configDto2.setNamespaceName("app");
            configDto2.setKey("readTimeout");
            configDto2.setValue("5000");
            ConfigDto configDto3 = new ConfigDto();
            configDto3.setNamespaceName("app");
            configDto3.setKey("currentTime");
            //mock config change
            configDto3.setValue(String.valueOf(System.currentTimeMillis()));

            return Lists.newArrayList(configDto1, configDto2, configDto3);
        }

        return Lists.newArrayList();

    }
}
